/**
 * Paquete que contiene los objetos.
 */
package co.sumset.objetos;

import co.sumset.cache.SoundCache;
import co.sumset.cache.SpriteCache;
import co.sumset.vista.Administrador;

/**
 * Interface Escenario es el que de alguna forma "coordina"
 * las cosas que ocurren en el juego - el escenario es
 * el que sabe cuantos monstruos hay, cuantas balas,
 * en que nivel estamos, etc...
 * 
 * @author Cristian Raul Pineda Rodriguez
 */
public interface Escenario {

	public static final int WIDTH=1365;//Ancho del Escenario
	public static final int HEIGHT=725;//Alto del Escenario
	public static final int LIMITE = 620;//Limite para la ubicacion de los Actores
	public static final int PLAY_HEIGHT = 200;//Limite para la ubicacion del Agente

	public static final int SPEED=10;//Velocidad de los Actores
	public static final int NUM_BASES=3;//Cantidad de Bases
	public static final int NUM_ROJOS=10;//Cantidad de Actores Rojos

	public static final int MAX_SHIELDS = 200;//Cantidad maxima del puntaje de vida

	public SpriteCache getSpriteCache();

	public SoundCache getSoundCache();

	public void addActor(Actor a);

	public Agente getAgente();

	public void gameOver();

	public void gameWon();
	
	public Nivel getNivel();

	public Administrador getAdministrador();

}
